package guda.house.biz;

import guda.house.biz.form.ReverseForm;
import guda.house.biz.form.bill.*;
import guda.house.biz.form.stat.StatFeeForm;
import guda.house.biz.query.BillPayQuery;
import guda.house.biz.query.UnpayQuery;
import guda.house.dal.dataobject.BillPayDO;
import guda.grape.autogen.common.page.BaseQuery;
import guda.grape.autogen.common.page.BizResult;

import java.util.Map;

public interface BillPayBiz {

        BizResult detail(long id);

        BizResult list(BaseQuery baseQuery);

        BizResult delete(long id);

        BizResult create(BillPayDO billPayDO);

        BizResult update(BillPayDO billPayDO);

        BizResult listForPayLog(BillPayQuery billPayQuery);

        BizResult initSearchForm(BillPaySearchForm billPaySearchForm);


        BizResult listForUnPay(UnpayQuery unpayQuery);

        BizResult initSearchForm(UnpaySearchForm unpaySearchForm);


        BizResult initForConfirmPay(Long villageId);

        BizResult initSearchForm(ConfirmPayForm confirmPayForm);

        BizResult pay(ConfirmPayForm confirmPayForm,Map<String,String[]> param);

        BizResult initForPrint(UnpaySearchForm unpaySearchForm);

        BizResult cancelBill(String id);

        BizResult queryForReverse(long payId);

        BizResult reverse(ReverseForm reverseForm);

        BizResult initForPrintBatch(BatchNoticeBillForm batchNoticeBillForm);


        BizResult statUnpay(UnpayQuery unpayQuery);

        BizResult queryDetail(long id);




}
